// 视图层面的修改
import { Injectable } from '@angular/core';
import { Subject } from 'rxjs';
import { ApesMessageService } from '@shared/apes/message';

@Injectable({
  providedIn: 'root'
})
export class AssemblyDrawingViewService {

  showTypeChange$ = new Subject(); //界面展示

  controlShowBtn$ = new Subject(); // 控制显示隐藏按钮

  menuChange$ = new Subject(); // 目录

  mainMenuChange$ = new Subject(); // 主组菜单

  subMenuChange$ = new Subject(); // 子组菜单

  subgroupChange$ = new Subject(); // 子组

  imgSelectChange$ = new Subject(); // 图片

  partsListChange$ = new Subject(); // 配件列表

  selectPart$ = new Subject();     // 选择配件

  selectPartImg$ = new Subject();     // 选择配件热点图

  partsListLoadingChange$ = new Subject(); // 配件列表查询状态

  modelInfoChange$ = new Subject(); // 配置车型数据

  carInfoChange$ = new Subject(); // 车型配置

  showLoadingStep$ = new Subject(); // 查询中

  cacheDataChange$ = new Subject(); // 车辆查询数据

  searchDataChange$ = new Subject(); // 车辆查询数据

  searchPriceChange$ = new Subject(); // 价格前置数据

  searchSanTouInquireChange$ = new Subject(); // 三头六臂数据

  searchSanTouPriceChange$ = new Subject(); // 三头六臂价格数据

  searchFilterDataChange$ = new Subject(); // 匹配配件过滤条件

  searchPageDataChange$ = new Subject(); // 分页查询数据

  searchLoadingBtn$ = new Subject(); // 查询匹配配件

  searchMatchLoadingBtn$ = new Subject(); // 查询匹配配件

  searchPriceLoadingBtn$ = new Subject(); // 查询价格前置

  searchIntelligentLoadingBtn$ = new Subject(); // 查询智能配件

  searchSanTouInquireLoadingBtn$ = new Subject(); // 查询三头六臂配件

  showSearchIntelligent$ = new Subject(); // 显示智能配件列表

  constructor(
    private msgService: ApesMessageService,
  ) {

  }


  /***
   * 初始化界面
   */
  init() {
    this.showTypeChange$.next(1); // 初始化界面展示
    this.subgroupChange$.next([]); // 初始化列表展示
    this.modelInfoChange$.next({}); // 清空配置车型数据
    this.showLoadingStep$.next(0);  // 查询中步骤
    this.cacheDataChange$.next({}); // 清空查询车辆数据
    this.mainMenuChange$.next({});  // 清空主组数据
    this.subMenuChange$.next({});   // 清空子组数据
    this.searchDataChange$.next(false); // 清空查询配件数据
  }

  /***
   * 清空第二栏数据
   */
  clearSecondSurface() {
    this.imgSelectChange$.next(null); //清空图片
    this.partsListChange$.next({}); // 清空配件列表;
    this.showTypeChange$.next(1); //展示第一个版面
  }

  /***
   * 展示第二栏数据
   */
  showSecondSurface(data) {
    this.imgSelectChange$.next(data); //展示图片
    this.showTypeChange$.next(2); //展示第二个版面
  }


}
